# -*- coding: utf-8 -*-
# @Time : 2021/7/13 上午9:41
# @Author : fugang_le



########### 电话号码  ###########
#写一个正则表达式，能匹配出多种格式的电话号码，包括
#(021)88776543   010-55667890 02584453362  0571 66345673
#\(?0\d{2,3}[) -]?\d{7,8}
import re
text="(021)88776543 010-55667890 02584533622 057184720483 837922740"
# 座机号码
m=re.findall(r"\(?0\d{2,3}[) -]?\d{7,8}",text)
if m:
    print(m)
else:
    print('not match')

#\(?   ?表示括号可有可无
# \(表示匹配(
#0\d{2,3}  区号。0xx或0xx
#[) -]?  区号后面可以跟")"," ","-"，也可能什么都没有
#\d{7,8} 7位或8位的号码

# 更好的是用以下匹配
#
# 0\d2,3\d{7,8}|0\d{2,3}[ -]?\d{7,8}

# 手机号码
mobile = '18312423454'

MOBILE = "^1[358]\d{9}$|^147\d{8}$|^179\d{8}$"
p = re.compile(MOBILE)

if p.match(mobile):
    print(mobile)
########### 电话号码  ###########